import axios from 'axios'
import qs from 'qs'
axios.defaults.timeout = 20000
import {Dialog,Toast} from 'vant'
// import VueCookies from 'vue-cookies';
import router from '@/router.js';

// axios.defaults.headers.post['Content-Type'] = 'application/x-www=form-urlencoded'
// axios.interceptors.request.use(config => {
//   console.log("config",config)
//   //return config
// }, e => {
  
// })
export default {
  async fetchGet(url, params = {}) {
    return await new Promise((resolve, reject) => {
      // let token = VueCookies.get('token')
      // if (token) { 
      //     axios.defaults.headers.common["token"] = token
      // }
      axios.get(url, params).then(res => {
        resolve(res.data)
      }).catch(error => {
        reject(error)
      })
    })
  },
  async fetchPost(url, data = {}) {
    return await new Promise((resolve, reject) => {
      // let token = VueCookies.get('token')
      // if (token) { 
      //     axios.defaults.headers.common["token"] = token
      // }
	  // const token = VueCookies.get('token')
	  // if(token==null||token=='undefined'||token=='' || token==null){
		 //  router.replace('/login');
	  // }
	  // data.token = token;
      axios.post(url, qs.stringify(data)).then(res => {
		 if(res.data.ret!=200){
			 Dialog({ title:'温馨提示', message: res.data.msg.split('：')[1]||res.data.msg });
		 }
		 if(res.data.ret==401){
			 //router.replace('/login');
		 }
        resolve(res.data)
      }).catch(error => {
		  Dialog({ title:'温馨提示', message: error.split('：')[1]||error });
          reject(error)
      }).finally(res=>{
        Toast.clear()
      })
    })
  },
  async fetchPost2(url, data = {}) {
    return await new Promise((resolve, reject) => {
      // let token = VueCookies.get('token')
      // if (token) { 
      //     axios.defaults.headers.common["token"] = token
      // }
	  // const token = VueCookies.get('token')
	  // if(token==null||token=='undefined'||token=='' || token==null){
		 //  router.replace('/login');
	  // }
	  // data.token = token;
      axios.post(url, qs.stringify(data)).then(res => {
		 if(res.data.ret!=200){
			 Dialog({ title:'温馨提示', message: res.data.msg.split('：')[1]||res.data.msg });
		 }
		 if(res.data.ret==401){
			 //router.replace('/login');
		 }
        resolve(res.data)
      }).catch(error => {
		  Dialog({ title:'温馨提示', message: error.split('：')[1]||error });
          reject(error)
      })
    })
  },
  fetchPostForUpload(url, data = {}) {
    return new Promise((resolve, reject) => {
      let config = {
        headers: {
          'Content-Type': 'multipart/form-data'
        }
      } // 添加请求头
      axios.post(url, data, config).then(res => {
        resolve(res.data)
      }).catch(error => {
        reject(error)
      })
    })
  }
}